package cn.com.bod.fas.pm.model.po;

import cn.com.yusys.yusp.commons.mapper.domain.BaseDomain;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import javax.persistence.*;


/**
 * @description 个人客户基础信息表
 * @author houyaoxun
 * @date 2019年9月25日
 * @version 1.0.0
 * @Copyright (c) scfhdt
 */
@Data
@EqualsAndHashCode(callSuper=false)
@Entity
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "cu_per_cust_base")
public class CuPerCustBase extends BaseDomain implements Serializable{
	private static final long serialVersionUID = 1L;


	
	/** 客户编号 **/
	@Id
	@Column(name = "CUST_NO")
	private String custNo;

	/** 性别 **/
	@Column(name = "GENDER_ID", unique = false, nullable = true, length = 6)
	private String genderId;
	
	/** 客户姓氏 **/
	@Column(name = "FIRST_NAME", unique = false, nullable = true, length = 20)
	private String firstName;
	
	/** 客户名字 **/
	@Column(name = "SECD_NAME", unique = false, nullable = true, length = 20)
	private String secdName;
	
	/** 拼音名称 **/
	@Column(name = "PINYIN_NAME", unique = false, nullable = true, length = 80)
	private String pinyinName;
	
	/** 拼音缩写 **/
	@Column(name = "PINYIN_ABBR", unique = false, nullable = true, length = 20)
	private String pinyinAbbr;
	
	/** 曾用名 **/
	@Column(name = "USED_NAME", unique = false, nullable = true, length = 70)
	private String usedName;
	
	/** 出生地点 **/
	@Column(name = "BIRTH_ADDR", unique = false, nullable = true, length = 50)
	private String birthAddr;
	
	/** 民族 **/
	@Column(name = "ETHNIC_ID", unique = false, nullable = true, length = 10)
	private Integer ethnicId;
	
	/** 籍贯 **/
	@Column(name = "NATIVE_PLACE", unique = false, nullable = true, length = 200)
	private String nativePlace;
	
	/** 户籍性质 **/
	@Column(name = "HOUSEHOLD_CHA_ID", unique = false, nullable = true, length = 10)
	private Integer householdChaId;
	
	/** 现居住地址-省 **/
	@Column(name = "NOW_PROV_ID", unique = false, nullable = true, length = 10)
	private Integer nowProvId;
	
	/** 现居住地址-市 **/
	@Column(name = "NOW_CITY_ID", unique = false, nullable = true, length = 10)
	private Integer nowCityId;
	
	/** 现居住地址-区 **/
	@Column(name = "NOW_COUNTY_ID", unique = false, nullable = true, length = 10)
	private Integer nowCountyId;
	
	/** 现居住地址-详细地址 **/
	@Column(name = "NOW_PHYS_ADDR", unique = false, nullable = true, length = 50)
	private String nowPhysAddr;
	
	/** 现居地邮政编码 **/
	@Column(name = "NOW_ZIP_CODE", unique = false, nullable = true, length = 10)
	private String nowZipCode;
	
	/** 现居住居住年限 **/
	@Column(name = "NOW_RESDNT_YEARS", unique = false, nullable = true, length = 10)
	private String nowResdntYears;
	
	/** 居住状况 **/
	@Column(name = "RESDNT_SITU", unique = false, nullable = true, length = 6)
	private String resdntSitu;
	
	/** 健康状况 **/
	@Column(name = "HEALTH_STATUS", unique = false, nullable = true, length = 10)
	private Integer healthStatus;
	
	/** 宗教信仰 **/
	@Column(name = "RELIGION_FAITH", unique = false, nullable = true, length = 10)
	private Integer religionFaith;
	
	/** 政治面貌 **/
	@Column(name = "POLI_APPE", unique = false, nullable = true, length = 10)
	private Integer poliAppe;
	
	/** 邮件地址 **/
	@Column(name = "EMAIL", unique = false, nullable = true, length = 40)
	private String email;
	
	/** 出生日期 **/
	@Column(name = "BIRTH_DATE", unique = false, nullable = true, length = 8)
	private String birthDate;
	
	/** 最高学历 **/
	@Column(name = "SUPR_EDU_DEGREE_ID", unique = false, nullable = true, length = 6)
	private String suprEduDegreeId;
	
	/** 最高学位 **/
	@Column(name = "SUPR_DEGREE_ID", unique = false, nullable = true, length = 10)
	private Integer suprDegreeId;
	
	/** 毕业学校 **/
	@Column(name = "SCH_NAME", unique = false, nullable = true, length = 80)
	private String schName;
	
	/** 所学专业 **/
	@Column(name = "MAJOR", unique = false, nullable = true, length = 80)
	private String major;
	
	/** 毕业时间 **/
	@Column(name = "GRAD_TIME", unique = false, nullable = true, length = 8)
	private String gradTime;
	
	/** 职业状况 **/
	@Column(name = "CAREER_STATUS", unique = false, nullable = true, length = 10)
	private Integer careerStatus;
	
	/** 职业 **/
	@Column(name = "CAREER_CODE", unique = false, nullable = true, length = 6)
	private String careerCode;
	
	/** 从事行业 **/
	@Column(name = "CAREER_INDUS_ID", unique = false, nullable = true, length = 10)
	private Integer careerIndusId;
	
	/** 单位名称 **/
	@Column(name = "EMPLR_NAME", unique = false, nullable = true, length = 200)
	private String emplrName;
	
	/** 单位性质 **/
	@Column(name = "EMPLR_CHA_ID", unique = false, nullable = true, length = 10)
	private Integer emplrChaId;
	
	/** 单位地址 **/
	@Column(name = "EMPLR_ADDR", unique = false, nullable = true, length = 200)
	private String emplrAddr;
	
	/** 单位邮编 **/
	@Column(name = "EMPLR_ZIP_CODE", unique = false, nullable = true, length = 32)
	private String emplrZipCode;
	
	/** 单位电话 **/
	@Column(name = "OFFICE_TEL_NUM", unique = false, nullable = true, length = 20)
	private String officeTelNum;
	
	/** 传真号码 **/
	@Column(name = "FAX_NUM", unique = false, nullable = true, length = 20)
	private String faxNum;
	
	/** 通讯地址 **/
	@Column(name = "COMM_ADDR", unique = false, nullable = true, length = 200)
	private String commAddr;
	
	/** 通讯编码 **/
	@Column(name = "COMM_CODE", unique = false, nullable = true, length = 20)
	private String commCode;
	
	/** 联系电话 **/
	@Column(name = "CONT_NUM", unique = false, nullable = true, length = 20)
	private String contNum;
	
	/** 行政级别 **/
	@Column(name = "ADMIN_LVL", unique = false, nullable = true, length = 10)
	private Integer adminLvl;
	
	/** 单位联系人 **/
	@Column(name = "OFFICE_CONTACTS", unique = false, nullable = true, length = 30)
	private String officeContacts;
	
	/** 职务 **/
	@Column(name = "POS_LVL_CODE", unique = false, nullable = true, length = 10)
	private Integer posLvlCode;
	
	/** 参加工作时间 **/
	@Column(name = "ENTRY_DATE", unique = false, nullable = true, length = 8)
	private String entryDate;
	
	/** 户籍地址-省 **/
	@Column(name = "HOUSEHOLD_PROV_ID", unique = false, nullable = true, length = 10)
	private Integer householdProvId;
	
	/** 户籍地址-市 **/
	@Column(name = "HOUSEHOLD_CITY_ID", unique = false, nullable = true, length = 10)
	private Integer householdCityId;
	
	/** 户籍地址-区 **/
	@Column(name = "HOUSEHOLD_COUNTY_ID", unique = false, nullable = true, length = 10)
	private Integer householdCountyId;
	
	/** 户籍地址-详细地址 **/
	@Column(name = "HOUSEHOLD_PHYS_ADDR", unique = false, nullable = true, length = 30)
	private String householdPhysAddr;
	
	/** 婚姻状况 **/
	@Column(name = "MARRIAGE_FLAG", unique = false, nullable = true, length = 6)
	private String marriageFlag;
	
	/** 配偶姓名 **/
	@Column(name = "SPOUSE_NAME", unique = false, nullable = true, length = 10)
	private String spouseName;
	
	/** 配偶证件类型 **/
	@Column(name = "SPOUSE_CERT_TYPE_ID", unique = false, nullable = true, length = 6)
	private String spouseCertTypeId;
	
	/** 配偶证件号码 **/
	@Column(name = "SPOUSE_CERT_NO", unique = false, nullable = true, length = 20)
	private String spouseCertNo;
	
	/** 配偶职业信息 **/
	@Column(name = "SPOUSE_CAREER_ID", unique = false, nullable = true, length = 10)
	private Integer spouseCareerId;
	
	/** 配偶工作单位 **/
	@Column(name = "SPOUSE_EMPLR_NAME", unique = false, nullable = true, length = 50)
	private String spouseEmplrName;
	
	/** 客户经理主键 **/
	@Column(name = "CUST_MGR_NO", unique = false, nullable = true, length = 10)
	private Integer custMgrNo;
	
	/** 客户经理姓名 **/
	@Column(name = "CUST_MGR_NAME", unique = false, nullable = true, length = 20)
	private String custMgrName;
	
	/** 所属机构 **/
	@Column(name = "ORG_NO", unique = false, nullable = true, length = 10)
	private Integer orgNo;
	
	/** 登记机构 **/
	@Column(name = "REG_ORG", unique = false, nullable = true, length = 10)
	private Integer regOrg;
	
	/** 登记人 **/
	@Column(name = "REG_OPERATOR", unique = false, nullable = true, length = 10)
	private Integer regOperator;
	
	/** 登记日期 **/
	@Column(name = "REG_DATE", unique = false, nullable = true, length = 8)
	private String regDate;
	
	/** 年收入范围 **/
	@Column(name = "YEAR_INCOME_AMT_SCOPE_ID", unique = false, nullable = true, length = 10)
	private Integer yearIncomeAmtScopeId;
	
	/** 年收入 **/
	@Column(name = "YEAR_INCOME_AMT", unique = false, nullable = true, length = 18)
	private java.math.BigDecimal yearIncomeAmt;
	
	/** 参加本单位日期 **/
	@Column(name = "ENTRY_DATE_DATE", unique = false, nullable = true, length = 8)
	private String entryDateDate;
	
	/** 是否有执业资格 **/
	@Column(name = "QUALIF_FLAG", unique = false, nullable = true, length = 10)
	private Integer qualifFlag;
	
	/** 资格证书名称 **/
	@Column(name = "QUALIF_NAME", unique = false, nullable = true, length = 40)
	private String qualifName;
	
	/** 职称 **/
	@Column(name = "CAREER_TITLE", unique = false, nullable = true, length = 10)
	private Integer careerTitle;
	
	/** 拥有我行股份金额 **/
	@Column(name = "HODL_STOCK_AMT", unique = false, nullable = true, length = 18)
	private java.math.BigDecimal hodlStockAmt;
	
	/** 在我行职务 **/
	@Column(name = "POS_ID", unique = false, nullable = true, length = 10)
	private Integer posId;
	
	/** 工资账户开户行 **/
	@Column(name = "WAGE_ACCT_ORG_ID", unique = false, nullable = true, length = 10)
	private Integer wageAcctOrgId;
	
	/** 工资账号 **/
	@Column(name = "WAGE_ACCT_NO", unique = false, nullable = true, length = 32)
	private String wageAcctNo;
	
	/** 贷款卡号码 **/
	@Column(name = "LOAN_CARD_NO", unique = false, nullable = true, length = 32)
	private String loanCardNo;
	
	/** 在我行开立账户情况 **/
	@Column(name = "CURR_ORG_ACCT_FLAG", unique = false, nullable = true, length = 20)
	private String currOrgAcctFlag;
	
	/** 持卡情况 **/
	@Column(name = "CARD_FLAG", unique = false, nullable = true, length = 10)
	private Integer cardFlag;
	
	/** 个人简历 **/
	@Column(name = "RESUNE_DESC", unique = false, nullable = true, length = 500)
	private String resuneDesc;
	
	/** 美国纳税人识别号 **/
	@Column(name = "TAXPAYER_ID", unique = false, nullable = true, length = 10)
	private Integer taxpayerId;
	
	/** 前次来行状况 **/
	@Column(name = "LAST_DEALINGS_DESC", unique = false, nullable = true, length = 200)
	private String lastDealingsDesc;
	
	/** 备注 **/
	@Column(name = "REMARK", unique = false, nullable = true, length = 200)
	private String remark;
	
	/** CONTACT_ADDR **/
	@Column(name = "CONTACT_ADDR", unique = false, nullable = true, length = 50)
	private String contactAddr;
	
	/** HAVE_HOUSE_FLAG **/
	@Column(name = "HAVE_HOUSE_FLAG", unique = false, nullable = true, length = 6)
	private String haveHouseFlag;
	
	/** LOAN_FLAG **/
	@Column(name = "LOAN_FLAG", unique = false, nullable = true, length = 6)
	private String loanFlag;
	
	/** SPOUSE_MOBILE_NUM **/
	@Column(name = "SPOUSE_MOBILE_NUM", unique = false, nullable = true, length = 50)
	private String spouseMobileNum;
	
	/** SPOUSE_YEAR_INCOME_AMT **/
	@Column(name = "SPOUSE_YEAR_INCOME_AMT", unique = false, nullable = true, length = 18)
	private java.math.BigDecimal spouseYearIncomeAmt;
	
	/** SPOUSE_EMPLR_TEL_NUM **/
	@Column(name = "SPOUSE_EMPLR_TEL_NUM", unique = false, nullable = true, length = 50)
	private String spouseEmplrTelNum;
	
	/** SPOUSE_EMPLR_ADDR **/
	@Column(name = "SPOUSE_EMPLR_ADDR", unique = false, nullable = true, length = 50)
	private String spouseEmplrAddr;
	
}